package com.itheima.a02test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;

public class Test2 {
    public static void main(String[] args) {
        /*
        创建arraylist集合 添加以下字符串 前面是姓名 后面是年龄
        张三，23
        李四，24
        王五，25
        保留年龄大于等于24的人 并存储到Map集合中 姓名为键  年龄为值
         */
        ArrayList<String> list = new ArrayList<>();
        //添加元素
        list.add("张三,23");
        list.add("李四,24");
        list.add("王五,25");

        //进行筛选
//        Map<String, Integer> map1 = list.stream().filter(s -> Integer.parseInt(s.split(",")[1]) >= 24)
//                .collect(Collectors.toMap(new Function<String, String>() {
//                    @Override
//                    public String apply(String s) {
//                        return s.split(",")[0];
//                    }
//                }, new Function<String, Integer>() {
//                    @Override
//                    public Integer apply(String s) {
//                        return Integer.parseInt(s.split(",")[1]);
//                    }
//                }));

        //使用匿名内部类的形式简化代码
        Map<String, Integer> map2 = list.stream().filter(s -> Integer.parseInt(s.split(",")[1]) >= 24)
                .collect(Collectors.toMap(
                        s -> s.split(",")[0],
                        s -> Integer.parseInt(s.split(",")[1])));
        System.out.println(map2);
    }
}
